package com.cy1;

/**
 * 这是2022年7月27日练习的java代码
 *
 * @author xxx
 * @date 2022 /07/27 03:22
 */
public class J727 {
    /**
     * The entry point of application.
     *
     * @param args the input arguments
     */
    public static void main(String[] args) {
        // System.out.println("帅哥，加油！");
        // System.out.println(Add(35, 67));
        // float a = 3.0f;
        // float b = 4.5f;
        // // java中浮点数也能进行%运算
        // System.out.println(b % a);
        // 打印素数
        // System.out.println("1-100之间的素数有：");
        // for (int i = 1; i <= 100; i++) {
        // if (judgeWhetherItIsAPrimeNumber(i)) {
        // System.out.print(i);
        // System.out.print(" ");
        // }
        // }
        // System.out.println();
        // // 测试多组输入
        // Scanner sc = new Scanner(System.in);
        // int n = 0;
        // while ((n = sc.nextInt()) != 0) {
        // if (judgeWhetherItIsAPrimeNumber(n)) {
        // System.out.println(n + "是素数");
        // } else {
        // System.out.println(n + "是合数");
        // }
        // }
        // 输出闰年
        // System.out.println("1000-2000年之间的闰年有：");
        // for (int i = 1000; i <= 2000; i++) {
        // if (judgeWhetherAYearIsALeapYear(i)) {
        // System.out.print(i);
        // System.out.print(" ");
        // }
        //
        // }
        // 出现了多少数字9
        byte count = 0;
        for (byte i = 1; i <= 100; i++) {
            byte ret = howManyNinesAppear(i);
            if (ret != 0) {
                count += ret;
            }
        }
        System.out.println("count:" + count);

    }

    /**
     * 判断1到100之间的数字包含了几个数字9；
     * 
     * @param i 一个1到100之间的数字
     * @return 包含数字9的个数
     */
    public static byte howManyNinesAppear(byte i) {
        byte ret = 0;
        if (9 == i % 10) {
            ret++;
        }
        if (9 == i / 10) {
            ret++;
        }
        return ret;
    }

    /**
     * 该方法用于判断一年是否是闰年
     * 
     * @param i 年份
     * @return true 表示是闰年 false 表示不是闰年
     */

    public static boolean judgeWhetherAYearIsALeapYear(int i) {
        return (0 == i % 4) && (0 != i % 100) || (0 == i % 400);
    }

    /**
     * 判断是否是素数
     * 
     * @param n
     * @return true为素数，false为合数
     */
    public static boolean judgeWhetherItIsAPrimeNumber(int n) {
        if (n <= 1) {
            return false;
        } else if (n == 2) {
            return true;
        } else {
            for (int i = 2; i <= (int)Math.sqrt(n); i++) {
                if (0 == n % i) {
                    return false;
                }
            }
            return true;
        }
    }

    /**
     * 用于计算两数的和
     *
     * @param a the a是一个整形参数
     * @param b the b是一个整形参数
     * @return the a+b的结果
     */
    public static int Add(int a, int b) {
        return a + b;
    }
}
